package com.cooud.order.feign.fallback;

import com.cooud.order.feign.ProductFeignClient;
import com.cooud.product.bean.Product;
import org.springframework.stereotype.Component;

import java.math.BigDecimal;

/**
 * Created with IntelliJ IDEA.
 *
 * @Author: DongGuoZhen
 * @Date: 2025/03/16/15:17
 * @Description:
 */

@Component
public class ProductFeignClientFallback implements ProductFeignClient {

//    这个方法只要在远程调用失败的时候才会被调用，所以我们可以返回一个默认值，或者抛出一个异常，让调用方知道是哪里出了问题。
    @Override
    public Product getProductById(Long id) {
        System.out.println("兜底回调");
        Product product = new Product();
        product.setId(id);
        product.setProductName("默认商品");
        product.setPrice(new BigDecimal(0));
        product.setNum(0);
        return product;
    }
}
